import Vue from 'vue'
import Vuex from 'vuex'
import user from './modules/user'
import menu from './modules/menu'
Vue.use(Vuex)

const store = new Vuex.Store({
  // 组合模块的配置项
  modules: {
    user: user, // 注册 user 模块
    menu: menu // 注册 menu 模块
  }
})

// 组件中使用 user 模块中的数据
// this.$store.state.user.xxxx

// 组件中出发mutations ?
// this.$store.commit('user/xxxMutation', payload)

// 组件中使用 actions ?
// this.$store.dispatch('user/xxxAction', payload)

// 场景:1  组件中使用 state 和方法很少, this.$store
//      2  组件中使用 satee 和方法很多, 映射方法 mapState 和 mapActions

export default store
